home *** CD-ROM | disk | FTP | other *** search
-
- #define LINT_ARGS
- #include "user.h"
- #include "graph.h"
- #include <stdlib.h>
- #include <stdio.h>
- #include <dos.h>
-
- void delay();
-
- main(argc, argv, envp)
- int argc;
- char *argv[], *envp[];
- {
- unsigned i, z;
- int j, k, x, y, x1, y1, x2, y2;
- char chr;
-
- kbclr();
- gmode();
-
- while(kbkey() != 1) {
- delay();
- for(x = 0, y = 173; x < 720; x++)
- gset(x,y);
- for(x = 359, y = 0; y < 348; y++)
- gset(x,y);
- for(x = 0, y = 0; x < 720; x++)
- gset(x,y);
- for(x = 0, y = 0; y < 348; y++)
- gset(x,y);
- for(x = 0, y = 347; x < 720; x++)
- gset(x,y);
- for(x = 719, y = 0; y < 348; y++)
- gset(x,y);
- delay();
-
- for(x = 0, y = 173; x < 720; x++)
- grset(x,y);
- for(x = 359, y = 0; y < 348; y++)
- grset(x,y);
- for(x = 0, y = 0; x < 720; x++)
- grset(x,y);
- for(x = 0, y = 0; y < 348; y++)
- grset(x,y);
- for(x = 0, y = 347; x < 720; x++)
- grset(x,y);
- for(x = 719, y = 0; y < 348; y++)
- grset(x,y);
-
- delay();
-
- gline(0,0,719,0);
- gline(0,0,0,347);
- gline(0,347,719,347);
- gline(719,0,719,347);
- gline(0,173,719,173);
- gline(359,0,359,347);
- gline(0,87,719,87);
- gline(0,260,719,260);
- gline(180,0,180,347);
- gline(539,0,539,347);
- gline(0,0,719,347);
- gline(0,347,719,0);
-
- delay();
- glinr(0,0,719,0);
- glinr(0,0,0,347);
- glinr(0,347,719,347);
- glinr(719,0,719,347);
- glinr(0,173,719,173);
- glinr(359,0,359,347);
- glinr(0,87,719,87);
- glinr(0,260,719,260);
- glinr(180,0,180,347);
- glinr(539,0,539,347);
- glinr(0,0,719,347);
- glinr(0,347,719,0);
- delay();
-
- gbox(0,0,719,347);
- delay();
- gcls();
-
- delay();
- gbox(0,0,180,87);
- gbox(539,0,719,87);
- gbox(0,260,180,347);
- gbox(539,260,719,347);
-
- gfilv(0,0,180,87);
- gfilh(539,0,719,87);
- gfilh(0,260,180,347);
- gfilv(539,260,719,347);
-
- delay();
- gfclr(0,0,180,87);
- gfclr(539,0,719,87);
- gfclr(0,260,180,347);
- gfclr(539,260,719,347);
-
- delay();
- gboxr(0,0,180,87);
- gboxr(539,0,719,87);
- gboxr(0,260,180,347);
- gboxr(539,260,719,347);
-
- delay();
- gmode();
- delay();
-
- gline(0,0,719,0);
- gline(0,0,0,347);
- gline(0,347,719,347);
- gline(719,0,719,347);
- gline(0,173,719,173);
- gline(359,0,359,347);
- gline(0,87,719,87);
- gline(0,260,719,260);
- gline(180,0,180,347);
- gline(539,0,539,347);
- gline(0,0,719,347);
- gline(0,347,719,0);
-
- delay();
- gfclr(0,0,180,87);
- gfclr(539,0,719,87);
- gfclr(0,260,180,347);
- gfclr(539,260,719,347);
- delay();
- gfill(0,0,180,87);
- gfilv(539,0,719,87);
- gfilh(0,260,180,347);
- gfill(539,260,719,347);
-
- delay();
- gmode();
-
- for(i = 0; i < 3; i++) {
- for(x1=x2=360,y1=y2=174;(x2 < 720)&&(y2 < 348);x1-=12,x2+=12,y1-=6,y2+=6)
- gbox(x1, y1, x2, y2);
-
- for(x1=x2=360,y1=y2=174;(x2 < 720)&&(y2 < 348);x1-=12,x2+=12,y1-=6,y2+=6)
- gboxr(x1, y1, x2, y2);
- }
- for(x1=0,y1=154,x2=40,y2=194; x2 < 719;x1+=5,x2+=5) {
- gbox(x1, y1, x2, y2);
- for(i = 0; i < 300; i++) ;
- gboxr(x1, y1, x2, y2);
- }
- for(x1=0,y1=170,x2=15,y2=178; x2 < 719;x1+=10,x2+=10) {
- gfill(x1, y1, x2, y2);
- for(i = 0; i < 250; i++) ;
- gboxr(x1, y1, x2, y2);
- gfclr(x1, y1, x2, y2);
- }
- for(x1=0,y1=154,x2=40,y2=194; x2 < 380;x1+=5,x2+=5) {
- gbox(x1, y1, x2, y2);
- for(i = 0; i < 300; i++) ;
- gboxr(x1, y1, x2, y2);
- }
- for(x1=x2=360,y1=y2=174;(x2 < 720)&&(y2 < 348);x1-=12,x2+=12,y1-=6,y2+=6)
- gbox(x1, y1, x2, y2);
-
- gcls();
-
- for(a_r = .333333; a_r < 1.1; a_r += .333333) {
- for(j = 0; j < 121; j += 30) {
- gcirc(360, 174, (unsigned long)j);
- grcirc(360, 174, (unsigned long)j);
- }
- for(j = 0; j < 121; j += 20)
- gcirc(360, 174, (unsigned long)j);
- for(j = 0; j < 121; j += 20)
- grcirc(360, 174, (unsigned long)j);
- }
-
- a_r = .666666;
- }
-
- gset(0,0);
- grset(200,40);
- j = gpnt(0,0);
- k = gpnt(200,40);
-
- cls();
- delay();
- printf("On point = %x\n", j);
- printf("Off point = %x\n\n", k);
-
- printf(" H E R C U L E S\n");
- printf("Graphics demonstration complete.\n\n");
- printf("\nWritten on the Microsoft C compiler\n");
- printf("and the Microsoft Macro Assembler.\n");
- printf(" B Y B I L L D I C K S O N\n\n");
- }
-
- void delay()
- {
- unsigned i, j;
-
- for(i = 0; i < 0x3fff; i++)
- ;
- }
-
-